/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package chainOfResponsability;

import java.util.ArrayList;

/**
 *
 * @author Rodolfo
 */
public abstract class Funcionario {

    protected ArrayList ListaRelatorio = new ArrayList();
    private Funcionario funcionarioSuperior;
    private String tipoFuncionario;

    public Funcionario getFuncionarioSuperior() {
        return funcionarioSuperior;
    }

    public void setFuncionarioSuperior(Funcionario funcionarioSuperior) {
        this.funcionarioSuperior = funcionarioSuperior;
    }

    public abstract String getTipoFuncionario();

    public String exibirRelatorio(String relatorio) {
        if (ListaRelatorio.contains(relatorio)) {
            return getTipoFuncionario();
        } else {
            if (funcionarioSuperior != null) {
                return funcionarioSuperior.exibirRelatorio(relatorio);
            } else {
                return "Sem acesso";

            }

        }
    }

}
